﻿using Microsoft.Extensions.Logging;
using Services.Home;
using Services.House;
using SqlSugar;
using System.Text.Json;
using static DataModels.Enums.GeneralEnum;

namespace ScheduledTasks.HomeService
{
    public class ArrearsInquiry : IScheduledTask
    {
        private readonly ILogger<OrderExpires> _logger;
        private SqlSugarClient _db;
        protected ArrearsInquiryService _ArrearsInquiryService;

        public ArrearsInquiry(ILogger<OrderExpires> logger, ArrearsInquiryService ArrearsInquiryService)
        {
            _logger = logger;
            _ArrearsInquiryService = ArrearsInquiryService;
        }

        //  6 位 cron 表达式（秒 分 时 日 月 周）
        //public string Schedule => "0 0 0/2 * * *";
        // 每月的第10、20、30天，在凌晨00:00:00执行
        public string Schedule => "0 0 0 10,20,30 * *";

        public async Task<Task> ExecuteAsync(SqlSugarClient db)
        {
            try
            {
                //DateTime a= DateTime.Now;
                //if (a >= Convert.ToDateTime("2025-09-24 10:01:00"))
                //{
                //    return Task.CompletedTask;
                //}
                // 欠费用户通知
                await _ArrearsInquiryService.NotificationArrearsUsers();
                Console.WriteLine("处理四格欠费查询成功！");
                return Task.CompletedTask;
            }
            catch (Exception ex)
            {
                Console.WriteLine("处理四格欠费查询时发生错误" + ex.Message);
                _logger.LogError(ex, "处理四格欠费查询时发生错误");
                return Task.CompletedTask;
            }
        }
    }
}